Home

Column

Welcome!

This website provides interactive results for the forecasting models explored in the paper Estimating Neighborhood Asking Rents using Scraped Craigslist Rental Listings.

The goal of this research is to a.) understand the temporal dynamics of rent estimates in Seattle and b.) forecast the current quarter’s rent levels based off of the prior periods. The focal series of models regress median one-bedroom rent asked values on different specifications of the panel’s correlation structure (i.e. temporal and spatial). All of the candidate models’ posterior distributions are estimated with integrated nested Laplace approximations (INLA) using the default, weakly-informative priors for all model hyperparameters. Throughout the following analyses, the training data are 2017 Q2 up to the prior quarter (i.e. 2018 Q1). The test period is a forecast for the current period and includes comparison to the appropriate median rent estimates for data observed so far in this period.

Most graphics include some level of interactivity, usually either hover-over tooltip information or a slider to control various views of the graphic. Clicking on cases will highlight data elements in most graphics, and double-clicking will reset the graphic. You can download the source code and data for this project from Github here.

Contact Chris Hess at hesscl@uw.edu for more information about this research.

This page was last updated: 2018-06-02




Table of Contents

Page Description
Distribution density graphic to investigate the distribution of rents among Seattle neighborhoods for each quarter
Panel Time-Series line graphic to show the observed or modeled temporal structure
Spatial Time-Series series of maps to show observed change across time
Model Fit tables of model root mean square error (RMSE), mean absolute error (MAE), and deviance information criterion (DIC) across training and test data

Column

Observed vs. Smoothed Rent Estimates

Distribution

Panel Time-Series

Spatial Time-Series

Column

Observed

Non-Spatial AR(1)

Spatial AR(1)

Spatiotemporal AR(1)

Model Fit

Column

Model Legend

Model abbr. Description
int Quarter fixed intercept
log(med1B) ~ 1 + Qtr
ns Non-spatial tract random effect for each tract, quarter fixed intercept
log(med1B) ~ 1 + Qtr + f(idtract, model = “iid”)
nsar1 Non-spatial tract random effect, AR(1) random effect for prior quarter, i.i.d random effect for current quarter
log(med1B) ~ 1 + f(idtract, model = “iid”) + f(idqtr, model = “ar1”) + , f(idqtr1, model = “iid”)
bym Spatial intrinsic conditional autoregressive (ICAR) tract random-effect, non-spatial i.i.d tract random effect, AR(1) random effect for prior quarter, i.i.d random effect for current quarter
log(med1B) ~ 1 + f(idtract, model = “bym”, scale.model = T, graph = “./output/seatract.graph”) + , f(idqtr, model = “ar1”) + f(idqtr1, model = “iid”)
spt Spatial intrinsic conditional autoregressive (ICAR) tract random-effect, non-spatial i.i.d tract random effect, AR(1) random effect for prior quarter, i.i.d random effect for current quarter, i.i.d. random effect for tract-quarter (space-time interaction)
log(med1B) ~ 1 + f(idtract, model = “bym”, scale.model = T, graph = “./output/seatract.graph”) + , f(idqtr, model = “ar1”) + f(idqtr1, model = “iid”) + f(idtractqtr, , model = “iid”)

Accuracy and Information Criteria

train_test int_rmse ns_rmse nsar1_rmse bym_rmse spt_rmse
Test 309.0099 214.7089 206.7180 199.0115 221.23077
Training 325.0620 141.2202 141.6717 143.6719 61.79238



train_test int_mae ns_mae nsar1_mae bym_mae spt_mae
Test 254.0486 154.08055 147.61005 141.27649 159.63849
Training 260.6634 93.81771 93.98435 96.51064 40.68186



train_test int_DIC ns_DIC nsar1_DIC bym_DIC spt_DIC
Training -182.2634 -688.6591 -688.5317 -691.7025 -923.6725



train_test int_WAIC ns_WAIC nsar1_WAIC bym_WAIC spt_WAIC
Training -181.8581 -670.8105 -670.5209 -673.5519 -925.2733

Hyperparameters

Non-Spatial AR(1)
mean sd 0.025quant 0.5quant 0.975quant mode
Precision for the Gaussian observations 92.9886 7.1199 79.5460 92.8120 107.5357 92.5807
Precision for idtract 30.7903 4.3235 23.0944 30.5172 40.0889 30.0053
Precision for idqtr 3040.2407 3357.8052 391.0750 2039.0533 11798.0230 987.1305
Rho for idqtr 0.2993 0.3652 -0.4779 0.3396 0.8684 0.5134
Precision for idqtr1 17174.5569 21584.3782 458.7981 10027.7571 74828.5879 826.6610



Spatial AR(1)
mean sd 0.025quant 0.5quant 0.975quant mode
Precision for the Gaussian observations 92.1202 7.1105 78.8390 91.8795 106.8254 91.4449
Precision for idtract (iid component) 93.9079 24.6724 54.1026 91.0335 150.5438 85.5872
Precision for idtract (spatial component) 86.8777 28.4620 44.6052 82.3435 154.8910 74.0615
Precision for idqtr 3081.2425 3683.2618 355.0843 1978.3691 12534.8672 898.8702
Rho for idqtr 0.2944 0.3787 -0.5238 0.3439 0.8697 0.5463
Precision for idqtr1 20220.9739 26036.1303 730.3808 11909.2860 88541.6865 1619.1155



Spatiotemporal AR(1)
mean sd 0.025quant 0.5quant 0.975quant mode
Precision for the Gaussian observations 222.5110 39.2648 156.7306 217.5641 316.6137 209.7509
Precision for idtract (iid component) 92.9822 24.2524 54.0788 90.0606 148.9127 84.5303
Precision for idtract (spatial component) 86.8716 28.3707 44.5825 82.4228 154.6462 74.2715
Precision for idqtr 3001.4264 3229.4372 395.5367 2041.3169 11409.1337 1001.5728
Rho for idqtr 0.3176 0.3611 -0.4556 0.3585 0.8763 0.5383
Precision for idqtr1 15953.6099 20035.4029 393.2678 9249.4029 69325.2186 661.0953
Precision for idtractqtr 159.7905 21.0212 117.4036 158.6183 210.5902 158.1134

Column

Non-Spatial AR(1)

Spatial AR(1)

Spatiotemporal AR(1)